package Soligee.model.vo.lancamentos;

import java.io.Serializable;
import javax.persistence.*;

@Entity
@Table(name = "itens_nfentrada")
public class ItensNFEntradaVO implements Serializable {

    @EmbeddedId
    private ItensNFEntradaPKVO chaveComposta; //chave composta da tabela
    @Column(name = "quantidade_itens", nullable = false)
    private double qtdadeItens;
    @Column(name = "valor_unt_item", nullable = false)
    private double valorUnitarioItem;
    @Column(name = "total", nullable = false)
    private double total;
    @Column (name="ativo", nullable = false)
    private boolean ativo;

    public ItensNFEntradaVO() {
    }

    public ItensNFEntradaVO(double qtdadeItens, double valorUnitarioItem, double total) {
        this.setQtdadeItens(qtdadeItens);
        this.setValorUnitarioItem(valorUnitarioItem);
        this.setTotal(total);
        this.setAtivo(true);
    }

    public double getQtdadeItens() {
        return qtdadeItens;
    }

    public void setQtdadeItens(double qtdadeItens) {
        this.qtdadeItens = qtdadeItens;
    }

    public double getValorUnitarioItem() {
        return valorUnitarioItem;
    }

    public void setValorUnitarioItem(double valorUnitarioItem) {
        this.valorUnitarioItem = valorUnitarioItem;
    }

    public double calculaNFItens() {
        return (getQtdadeItens() * getValorUnitarioItem());
    }

    public ItensNFEntradaPKVO getChaveComposta() {
        return chaveComposta;
    }

    public void setChaveComposta(ItensNFEntradaPKVO chaveComposta) {
        this.chaveComposta = chaveComposta;
    }

    public double getTotal() {
        return total;
    }

    public void setTotal(double total) {
        this.total = total;
    }

    /**
     * @return the ativo
     */
    public boolean isAtivo() {
        return ativo;
    }

    /**
     * @param ativo the ativo to set
     */
    public void setAtivo(boolean ativo) {
        this.ativo = ativo;
    }
}
